Smart parking lot system

ABSTRACT

One or more non-transitory computer-readable storage media having instructions stored thereon that, when executed by one or more processors, cause the one or more processors to detect a vehicle that enters into a parking lot, identify an individual associated with the vehicle, retrieve context information corresponding to the individual, dynamically determine a first parking space based on the context information and available parking spaces, and provide the individual with directions to the first parking space.

CROSS-REFERENCE TO RELATED APPLICATION

The present application claims the benefit and priority to U.S.Provisional Patent Application No. 62/794,370, filed on Jan. 18, 2019,U.S. Provisional Patent Application No. 62/794,276, filed on Jan. 18,2019, U.S. Provisional Patent Application No. 62/794,533, filed on Jan.18, 2019, U.S. Provisional Patent Application No. 62/794,535, filed onJan. 18, 2019, U.S. Provisional Patent Application No. 62/794,389, filedon Jan. 18, 2019, U.S. Provisional Patent Application No. 62/794,393,filed on Jan. 18, 2019, U.S. Provisional Patent Application No.62/794,415, filed on Jan. 18, 2019, U.S. Provisional Patent ApplicationNo. 62/794,032, filed on Jan. 18, 2019, U.S. Provisional PatentApplication No. 62/794,357, filed on Jan. 18, 2019, U.S. ProvisionalPatent Application No. 62/794,348, filed on Jan. 18, 2019, 62/794,407,filed on Jan. 18, 2019, U.S. Provisional Patent Application No.62/794,502, filed on Jan. 18, 2019, U.S. Provisional Patent ApplicationNo. 62/794,489, filed on Jan. 18, 2019, the entire disclosures of eachof which are incorporated by reference herein.

BACKGROUND

A building management system (BMS) is, in general, a system of devicesconfigured to control, monitor, and manage equipment in and/or around abuilding or building area. A BMS can include, for example, an HVACsystem, a security system, a lighting system, a fire alerting system,and any other system that is capable of managing building functions ordevices, or any combination thereof.

SUMMARY

One implementation of the present disclosure is one or morenon-transitory computer-readable storage media having instructionsstored thereon that, when executed by one or more processors, cause theone or more processors to detect a vehicle that enters into a parkinglot, identify an individual associated with the vehicle, retrievecontext information corresponding to the individual, dynamicallydetermine a first parking space based on the context information andavailable parking spaces, and provide the individual with directions tothe first parking space.

In some embodiments, the context information includes a schedule havingevents associated with the individual. In some embodiments, dynamicallydetermining the first parking space further includes determining thefirst parking space based on a time associated with a next event on theschedule of events. In some embodiments, dynamically determining thefirst parking space further includes determining the first parking spacebased on a physical location of the next event on the schedule ofevents. In some embodiments, the context information includes anorganizational role of the individual, and wherein dynamicallydetermining the first parking space further includes determining thefirst parking space based on the organizational role of the individual.In some embodiments, the context information includes a physicalcharacteristic of the individual. In some embodiments, detecting thevehicle includes recognizing a license plate of the vehicle. In someembodiments, providing the individual with directions to the firstparking space further includes transmitting the directions to a deviceassociated with the individual. In some embodiments, dynamicallydetermining the first parking space further includes determining thefirst parking space based on a number of schedules associated with anumber of individuals, wherein each of the number of schedules indicatesthat the associated individual is visiting a space associated with theparking lot.

Another implementation of the present disclosure is a method of smartparking space assignment, including detecting a vehicle that enters intoa parking lot, identifying an individual associated with the vehicle,retrieving context information corresponding to the individual,dynamically determining a first parking space based on the contextinformation and available parking spaces, and providing the individualwith directions to the first parking space.

In some embodiments, the context information includes a schedule havingevents associated with the individual. In some embodiments, dynamicallydetermining the first parking space further includes determining thefirst parking space based on a time associated with a next event on theschedule of events. In some embodiments, dynamically determining thefirst parking space further includes determining the first parking spacebased on a physical location of the next event on the schedule ofevents. In some embodiments, the context information includes anorganizational role of the individual, and wherein dynamicallydetermining the first parking space further includes determining thefirst parking space based on the organizational role of the individual.In some embodiments, the context information includes a physicalcharacteristic of the individual. In some embodiments, detecting thevehicle includes recognizing a license plate of the vehicle. In someembodiments, providing the individual with directions to the firstparking space further includes transmitting the directions to a deviceassociated with the individual. In some embodiments, dynamicallydetermining the first parking space further includes determining thefirst parking space based on a number of schedules associated with anumber of individuals, wherein each of the number of schedules indicatesthat the associated individual is visiting a space associated with theparking lot.

Another implementation of the present disclosure is a buildingmanagement system (BMS), including, one or more processing circuits andone or more computer readable storage media, the one or more computerreadable storage media having instructions stored thereon that, whenexecuted by the one or more processing circuits, cause the one or moreprocessing circuits to detect a vehicle that enters into a parking lot,identify an individual associated with the vehicle, retrieve contextinformation corresponding to the individual, dynamically determine afirst parking space based on the context information and availableparking spaces, and provide the individual with directions to the firstparking space.

In some embodiments, the context information includes a schedule havingevents associated with the individual, and wherein dynamicallydetermining the first parking space further includes determining thefirst parking space based on a time and a physical location of a nextevent on the schedule of events.

Another implementation of the present disclosure is one or morenon-transitory computer-readable storage media having instructionsstored thereon that, when executed by one or more processors, cause theone or more processors to detect a vehicle that enters into a parkinglot, identify an individual associated with the vehicle, retrievecontext information corresponding to the individual, identify aninterested person based on the context information, and provide theinterested person with an indication that the individual has arrived inthe parking lot.

In some embodiments, the context information includes a schedule havingevents associated with the individual. In some embodiments, theinterested person includes an attendee of an event on the schedule ofevents. In some embodiments, the interested person includes securitypersonnel. In some embodiments, the processing circuit provides theinterested person with an indication that the individual has arrived inthe parking lot in response to determining that the vehicle is parked inan assigned parking space. In some embodiments, the processing circuitdetermines that the vehicle is parked in the assigned parking spacebased on sensors located at the assigned parking space detecting apresence of the vehicle. In some embodiments, the indication includes alocation of the individual.

Another implementation of the present disclosure is a method of smartparking notifications, including detecting a vehicle that enters into aparking lot, identifying an individual associated with the vehicle,retrieving context information corresponding to the individual,identifying an interested person based on the context information, andproviding the interested person with an indication that the individualhas arrived in the parking lot.

In some embodiments, the context information includes a schedule havingevents associated with the individual. In some embodiments, theinterested person includes an attendee of an event on the schedule ofevents. In some embodiments, interested person includes securitypersonnel. In some embodiments, the processing circuit provides theinterested person with an indication that the individual has arrived inthe parking lot in response to determining that the vehicle is parked inan assigned parking space. In some embodiments, the processing circuitdetermines that the vehicle is parked in the assigned parking spacebased on sensors located at the assigned parking space detecting apresence of the vehicle. In some embodiments, the indication includes alocation of the individual.

Another implementation of the present disclosure is a buildingmanagement system (BMS), includes one or more processing circuits andone or more computer readable storage media, the one or more computerreadable storage media having instructions stored thereon that, whenexecuted by the one or more processing circuits, cause the one or moreprocessing circuits to detect a vehicle that enters into a parking lot,identify an individual associated with the vehicle, retrieve contextinformation corresponding to the individual, identify an interestedperson based on the context information, and provide the interestedperson with an indication that the individual has arrived in the parkinglot.

In some embodiments, the context information includes a schedule havingevents associated with the individual. In some embodiments, theinterested person includes an attendee of an event on the schedule ofevents. In some embodiments, the interested person includes securitypersonnel. In some embodiments, the processing circuit provides theinterested person with an indication that the individual has arrived inthe parking lot in response to determining that the vehicle is parked inan assigned parking space. In some embodiments, the processing circuitdetermines that the vehicle is parked in the assigned parking spacebased on sensors located at the assigned parking space detecting apresence of the vehicle.

Another implementation of the present disclosure is one or morenon-transitory computer-readable storage media having instructionsstored thereon that, when executed by one or more processors, cause theone or more processors to detect vehicles that enter into a parking lot,identify a characteristic of one or both of the vehicles or users of thevehicles, generate a model of usage of the parking lot based on the oneor both of the identified characteristic of the vehicles or the users ofthe vehicles, compare the model of the usage of the parking lot to amodel of the parking lot, and dynamically generate suggested changes ina service level associated with the parking lot based on the comparisonof the model of the usage of the parking lot and the model of theparking lot.

In some embodiments, identifying the characteristic of the vehiclesfurther includes identifying an occupancy of the vehicles. In someembodiments, the model of the usage of the parking lot includes usercharacteristics associated with the parking lot. In some embodiments,the user characteristics include a number of individuals using theparking lot based on the identified occupancy of the vehicles. In someembodiments, the model of the usage of the parking lot includeshistorical information describing a user population associated with theparking lot over a period of time. In some embodiments, dynamicallygenerating suggested changes in the service level of the parking lotfurther includes generating suggested changes to the parking lot basedon the historical information. In some embodiments, the suggestedchanges include non-person related attributes associated with use of theparking lot. In some embodiments, the suggested changes include physicalalterations of the parking lot. In some embodiments, the model of theusage of the parking lot includes vehicle characteristics associatedwith the parking lot. In some embodiments, in response to identifyingthe characteristic of one or both of the vehicles or the users of thevehicles, the one or more processors update a database using the one orboth of the identified characteristic of the vehicles or the users ofthe vehicles.

Another implementation of the present disclosure is a method, includingdetecting vehicles that enter into a parking lot, identifying acharacteristic of one or both of the vehicles or users of the vehicles,generating a model of usage of the parking lot based on the one or bothof the identified characteristic of the vehicles or the users of thevehicles, comparing the model of the usage of the parking lot to a modelof the parking lot, and dynamically generating suggested changes to aservice level associated with the parking lot based on the comparison ofthe model of the usage of the parking lot and the model of the parkinglot.

In some embodiments, identifying the characteristic of the vehiclesfurther includes identifying an occupancy of the vehicles. In someembodiments, the model of the usage of the parking lot includes usercharacteristics associated with the parking lot. In some embodiments,the model of the usage of the parking lot includes historicalinformation describing a user population associated with the parking lotover a period of time. In some embodiments, dynamically generatingsuggested changes to the service level associated with the parking lotfurther includes generating suggested changes to the parking lot basedon the historical information. In some embodiments, the suggestedchanges include non-person related attributes associated with use of theparking lot. In some embodiments, the suggested changes include physicalalterations of the parking lot. In some embodiments, the model of theusage of the parking lot includes vehicle characteristics associatedwith the parking lot.

Another implementation of the present disclosure is a buildingmanagement system (BMS), including one or more processing circuits andone or more computer readable storage media, the one or more computerreadable storage media having instructions stored thereon that, whenexecuted by the one or more processing circuits, cause the one or moreprocessing circuits to detect vehicles that enter into a parking lot,identify a characteristic of one or both of the vehicles or users of thevehicles, generate a model of a usage of the parking lot based on theone or both of the identified characteristics of the vehicles or theusers of the vehicles, compare the model of the usage of the parking lotto a model of the parking lot, and dynamically generate suggestedchanges to a service level associated with the parking lot based on thecomparison of the model of the usage of the parking lot and the model ofthe parking lot.

In some embodiments, the model of the usage of the parking lot includeshistorical information describing a user population associated with theparking lot over a period of time.

Another implementation of the present disclosure is one or morenon-transitory computer-readable storage media having instructionsstored thereon that, when executed by one or more processors, cause theone or more processors to receive, from sensors, data describing energyuse associated with a building, receive, from sensors, data describingenergy use associated with a parking lot associated with the building,generate a model of energy transfer between the building and the parkinglot based on the received data describing energy use associated with thebuilding and the parking lot, and generate an indication based on themodel of energy transfer between the building and the parking lot.

In some embodiments, the indication is an amount of energy to be used bythe building. In some embodiments, the indication is transmitted to acontroller to control an amount of energy used by the parking lot. Insome embodiments, the indication is a message describing electricvehicle charging capabilities in the parking lot, and wherein theindication is transmitted to one or more user devices associated withindividuals that use the parking lot. In some embodiments, theindication further includes a price associated with the electric vehiclecharging capabilities. In some embodiments, generating the indicationfurther includes determining a distribution of energy use between thebuilding and the parking lot based on training a machine learningalgorithm using the model. In some embodiments, the distribution ofenergy use between the building and the parking lot changes over time.

Another implementation of the present disclosure is a method, includingreceiving, from sensors, data describing energy use associated with abuilding, receiving, from sensors, data describing energy use associatedwith a parking lot associated with the building, generating a model ofenergy transfer between the building and the parking lot based on thereceived data describing energy use associated with the building and theparking lot, and generating an indication based on the model of energytransfer between the building and the parking lot.

In some embodiments, the indication is an amount of energy to be used bythe building. In some embodiments, the indication is transmitted to acontroller to control an amount of energy used by the parking lot. Insome embodiments, the indication is a message describing electricvehicle charging capabilities in the parking lot, and wherein theindication is transmitted to one or more user devices associated withindividuals that use the parking lot. In some embodiments, theindication further includes a price associated with the electric vehiclecharging capabilities. In some embodiments, generating the indicationfurther includes determining a distribution of energy use between thebuilding and the parking lot based on training a machine learningalgorithm using the model. In some embodiments, the distribution ofenergy use between the building and the parking lot changes over time.

Another implementation of the present disclosure is a buildingmanagement system (BMS), including one or more processing circuits andone or more computer readable storage media, the one or more computerreadable storage media having instructions stored thereon that, whenexecuted by the one or more processing circuits, cause the one or moreprocessing circuits to receive, from sensors, data describing energy useassociated with a building, receive, from sensors, data describingenergy use associated with a parking lot associated with the building,generate a model of energy transfer between the building and the parkinglot based on the received data describing energy use associated with thebuilding and the parking lot, and generate an indication based on themodel of energy transfer between the building and the parking lot.

In some embodiments, the indication is an amount of energy to be used bythe building. In some embodiments, the indication is transmitted to acontroller to control an amount of energy used by the parking lot. Insome embodiments, the indication is a message describing electricvehicle charging capabilities in the parking lot, and wherein theindication is transmitted to one or more user devices associated withindividuals that use the parking lot. In some embodiments, theindication further includes a price associated with the electric vehiclecharging capabilities. In some embodiments, generating the indicationfurther includes determining a distribution of energy use between thebuilding and the parking lot based on training a machine learningalgorithm using the model, and wherein the distribution of energy usebetween the building and the parking lot changes over time.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects and features of the present disclosure willbecome more apparent to those skilled in the art from the followingdetailed description of the example embodiments with reference to theaccompanying drawings.

FIG. 1A is a block diagram of a smart building environment, according toan exemplary embodiment.

FIG. 1B is another block diagram of the smart building environment ofFIG. 1A, according to an exemplary embodiment.

FIG. 2 is a block diagram of a building data platform associated withthe smart building environment of FIGS. 1A-1B, according to an exemplaryembodiment.

FIG. 3A is a block diagram of an entity graph, according to an exemplaryembodiment.

FIG. 3B is another block diagram of the entity graph of FIG. 3A,according to an exemplary embodiment.

FIG. 4A is a block diagram of a parking lot management system, accordingto an exemplary embodiment.

FIG. 4B is a node graph illustrating connections between features andcomponents of the parking lot management system of FIG. 11A, accordingto an exemplary embodiment.

FIG. 5 is a flow diagram of a method of dynamically determining aparking space, according to an exemplary embodiment.

FIG. 6 is a flow diagram of a method of notifying an interested person,according to an exemplary embodiment.

FIG. 7 is a flow diagram of a method of dynamically generating suggestedchanges for a parking lot, according to an exemplary embodiment.

FIG. 8 is a flow diagram of a method of modeling resource consumption ina parking lot, according to an exemplary embodiment.

DETAILED DESCRIPTION

Referring generally to the FIGURES, described herein are systems andmethods of a smart parking system. A smart parking system may include asmart parking lot and/or a smart parking lot management system. Thesmart parking lot may include sensors configured to generate data foridentifying vehicles and/or individuals. The smart parking lot may becommunicably coupled to the smart parking lot management system. Thesmart parking lot management system may identify, based on the data fromthe sensors, an individual, retrieve context information correspondingto the identified individual, and take actions based on the retrievedcontext information. For example, the smart parking lot managementsystem may determine when an individual has arrived at the smart parkinglot and may notify an interested person of their arrival. As a furtherexample, the smart parking lot management system may dynamically assignan individual a parking space based on a schedule of the individual andphysical characteristics of the individual. For example, the smartparking lot management system may determine that an individual is latefor a meeting and has difficulty walking and may assign the individual aparking space that is nearby the meeting and an elevator to take theindividual to a floor of the meeting room.

Hereinafter, example embodiments will be described in more detail withreference to the accompanying drawings. Referring now to FIGS. 1A-1B, ablock diagram of a smart building environment 100 is shown, according toan exemplary embodiment. Smart building environment 100 is shown toinclude cloud building management platform 140. Cloud buildingmanagement platform 140 may be configured to collect information from avariety of different data sources. Cloud management platform 140 maycreate digital representations, referred to as “digital twins,” ofphysical spaces, equipment, people, and/or events based on the collectedinformation. In various embodiments, the digital representations arestored in an entity graph. In brief overview, an entity graph is a datastructure representing entities (e.g., spaces, equipment, people,events, etc.) and relationships between the entities. In variousembodiments, the entity graph data structure facilitates advancedartificial intelligence and machine learning associated with theentities. In various embodiments, entities within the entity graph datastructure include or are associated with “agents,” or software entitiesconfigured to take actions with respect to the digital twins/real worldentities with which they are associated. In some implementations, theagents may be configured to implement artificial intelligence/machinelearning methodologies. The agents may be configured to facilitatecommunication and collection of information between the variety ofdifferent data sources. Each of the data sources may be implemented as,include, or otherwise use respective agents for facilitatingcommunication amongst or between the data sources and cloud buildingmanagement platform 140. The agents of cloud building managementplatform 140 and data sources may be configured to communicate usingdefined channels across which the agents may exchange information,messages, data, etc. amongst each other. In some examples, channels maybe defined for particular spaces, subspaces, control loops, groups ofequipment, people, buildings or groups of buildings, etc. In someimplementations, agents may communicate by publishing messages toparticular channels and subscribing to messages on particular channelsand/or published by particular other agents/types of agents. In variousembodiments, the data sources include buildings. For example, cloudbuilding management platform 140 may interact with a number ofbuildings, each of which may include an agent (or a group of agentscorresponding to various building subsystems within the respectivebuilding), to receive information. Hence, cloud building managementplatform 140 and the data sources may together form a network of agentsto facilitate artificially intelligent exchange and communication ofinformation across various channels. In some embodiments, one or moredevice(s), component(s), space(s) (and sets of devices, components,spaces) within cloud building management platform 140 may include arespective agent dedicated to perform various tasks associatedtherewith. The agents may therefore be dedicated for performing separatefunctions or tasks.

In various embodiments, cloud building management platform 140 collectsdata from buildings 10. For example, cloud building management platform140 may collect data from buildings 10 such as a school, a hospital, afactory, an office building, and/or the like. It should be understoodthat the present disclosure is not limited to the number or types ofbuildings 10 shown in FIG. 1B. As newdevices/components/spaces/buildings/events/control loops are added orotherwise incorporated into smart building environment 100, new digitalrepresentations (and associated agents, etc.) may be dynamicallygenerated and incorporated into the entity graph data structure. Variousexamples of agents and corresponding networking may be found in U.S.patent application Ser. No. 15/934,593, filed Mar. 23, 2018, and titled“Building Management System with Dynamic Channel Communication”, P.C.T.Application No. PCT/US2018/037,589, filed Jun. 14, 2018, and titled“Building Management System with Artificial Intelligence for UnifiedAgent Based Control of Building Subsystems,” and U.S. patent applicationSer. No. 16/036,685, filed Jul. 16, 2018, and titled “Systems andMethods for Agent Based Building Simulation for Optimal Control”, thecontents of each of which are incorporated herein by reference.

Buildings 10 may include entities 12. Entities 12 may include spaces,equipment, people, and/or events. In some embodiments, entities 12include spaces such as floors, rooms, zones, campuses, buildings, andthe like. In some embodiments, entities 12 include people such asemployees, visitors, pedestrians, staff, and the like. In someembodiments, entities 12 include equipment such as inventory, assets,furniture, vehicles, building components, devices, and the like. Forexample, entities 12 may include devices such as internet of things(IoT) devices. IoT devices may include any of a variety of physicaldevices, sensors, actuators, electronics, vehicles, home appliances,and/or other items capable of communicating data over an electronicnetwork (e.g., smart lights, smart appliances, smart home hub devices,etc.). In some embodiments, entities 12 include events such as meetings,fault indications, alarms, and the like. In various embodiments, cloudbuilding management platform 140 receives information associated withbuildings 10 and/or entities 12 and generates entity graph 170 based onthe received information. Entity graph 170 may include digital twinsthat are digital representations of real world spaces, equipment,people, events, and/or the like. Entity graph 170 is described ingreater detail below with reference to FIG. 3A-3B.

Smart building environment 100 may include building management system(BMS) 102. In various embodiments, BMS 102 communicates with cloudbuilding management platform 140 to facilitate management and control ofbuildings 10 and/or the various operations described herein. BMS 102 maybe configured to control, monitor, and/or manage equipment in or arounda building or building area (e.g., such as buildings 10, etc.). Forexample, BMS 102 may include a HVAC system, a security system, alighting system, a fire alerting system, and any other system that iscapable of managing building functions or devices, or any combinationthereof. Further, each of the systems may include sensors and otherdevices (e.g., IoT devices) for the proper operation, maintenance,monitoring, and the like of the respective systems. In some embodiments,each of buildings 10 is associated with a BMS 102. Additionally oralternatively, a single BMS 102 may manage multiple buildings 10. Forexample, a first BMS 102 may manage a first building 10, a second BMS102 may manage a second building 10, and a third BMS 102 may manage thefirst and second buildings 10 (e.g., via the first and second BMS 102,in a master-slave configuration, etc.), as well as a third building 10.In various embodiments, BMS 102 communicates with building subsystems120.

Building subsystems 120 may include fire safety subsystem 122,lift/escalators subsystem 124, building electrical subsystem 126,information communication technology (ICT) subsystem 128, securitysubsystem 130, HVAC subsystem 132, and/or lighting subsystem 134. Invarious embodiments, building subsystems 120 include fewer, additional,or alternative subsystems. For example, building subsystems 120 mayadditionally or alternatively include a refrigeration subsystem, anadvertising or signage subsystem, a cooking subsystem, a vendingsubsystem, a printer or copy service subsystem, or any other type ofbuilding subsystem that uses controllable equipment and/or sensors tomonitor or control a building 10. In some embodiment each of buildings10 includes building subsystems 120. Additionally or alternatively,multiple buildings 10 may share at least some of building subsystems120.

Each of building subsystems 120 may include any number of devices (e.g.,IoT devices), sensors, controllers, and connections to facilitatefunctions and control activities. For example, HVAC subsystem 132 mayinclude a chiller, a boiler, any number of air handling units,economizers, field controllers, supervisory controllers, actuators,temperature sensors, and other devices for controlling the temperature,humidity, airflow, or other variable conditions within buildings 10.Lighting subsystem 134 may include any number of light fixtures,ballasts, lighting sensors, dimmers, or other devices configured tocontrollably adjust the amount of light provided to a building space.Security subsystem 130 may include occupancy sensors, video surveillancecameras, digital video recorders, video processing servers, intrusiondetection devices, access control devices and servers, or othersecurity-related devices.

Cloud building management platform 140 and/or BMS 102 may interact witha variety of external systems. For example, cloud building managementplatform 140 may interact with remote systems and applications 30,client devices 40, and/or third party services 50. In variousembodiments, systems and/or components of smart building environment 100are configured to communicate using network 20. Network 20 may includehardware, software, or any combination thereof.

BMS 102 is shown to include communications interface 104 and processingcircuit 106. Communications interface 104 may facilitate communicationsbetween BMS 102 and external systems/applications (e.g., cloud buildingmanagement platform 140, remote systems and applications 30, clientdevices 40, third party services 50, building subsystems 120, etc.).Communications interface 104 may be or include wired or wirelesscommunications interfaces (e.g., jacks, antennas, transmitters,receivers, transceivers, wire terminals, etc.) for conducting datacommunications within smart building environment 100 and/or with otherexternal systems or devices. In various embodiments, communications viacommunications interface 104 is direct (e.g., local wired or wirelesscommunications). Additionally or alternatively, communications viacommunications interface 104 may be via network 20 (e.g., a WAN, theInternet, a cellular network, etc.). For example, cloud buildingmanagement platform 140 may communicate with BMS 102 using a wiredconnection and may communicate with client devices 40 (e.g., via BMS102, etc.) using a cellular connection (e.g., a 4G or 5G accesspoint/small cell base station, etc.). As a further example,communications interface 104 may include an Ethernet card and port forsending and receiving data via an Ethernet-based communications link ornetwork. As a further example, communications interface 104 may includea Wi-Fi transceiver for communicating via a wireless communicationsnetwork. As yet a further example, communications interface 104 mayinclude cellular or mobile phone communications transceivers.

Processing circuit 106 may include processor 108 and memory 110.Processing circuit 106 may be communicably connected to communicationsinterface 104 such that processing circuit 106 and the variouscomponents thereof can send and receive data via communicationsinterface 104. Processor 108 may be implemented as a general purposeprocessor, an application specific integrated circuit (ASIC), one ormore field programmable gate arrays (FPGAs), a group of processingcomponents, or other suitable electronic processing components.

Memory 110 (e.g., memory, memory unit, storage device, etc.) may includeone or more devices (e.g., RAM, ROM, Flash memory, hard disk storage,etc.) for storing data and/or computer code for completing orfacilitating the various processes, layers and modules described in thepresent application. Memory 110 may be or include volatile memory ornon-volatile memory. Memory 110 may include database components, objectcode components, script components, or any other type of informationstructure for supporting the various activities and informationstructures described in the present application. According to someembodiments, memory 110 is communicably connected to processor 108 viaprocessing circuit 106 and includes computer code for executing (e.g.,by processing circuit 106 and/or processor 108) one or more of theoperations described herein.

In some embodiments, BMS 102 and/or cloud building management platform140 are implemented within a single computer (e.g., one server, onehousing, etc.). In various other embodiments BMS 102 and/or cloudbuilding management platform 140 are distributed across multiple serversor computers (e.g., that can exist in distributed locations). In someembodiments, functions of BMS 102 and/or cloud building managementplatform 140 are implemented as agents. For example, BMS 102 may includea fault detection agent configured to analyze building data and detectfaults associated with building components.

Memory 110 may include applications circuit 112 that may includebuilding management application(s) 114. Building managementapplication(s) 114 may include various systems to monitor and/or controlspecific processes/events within buildings 10. For example, buildingmanagement application(s) 114 may include automated measurement andvalidation (AM&V), demand response (DR), fault detection and diagnostics(FDD), integrated control systems, and/or a building subsystemintegration system. Building management application(s) 114 may beconfigured to receive inputs from building subsystems 120 and/or otherdata sources, determine improved and/or optimal control actions forbuilding subsystems 120 based on the inputs, generate control signalsbased on the improved and/or optimal control actions, and provide thegenerated control signals to building subsystems 120.

Cloud building management platform 140 is shown to include processingcircuit 142 having processor 144 and memory 146. In some embodiments,cloud building management platform 140 includes multiple processingcircuits 142 each having one or more processors 144 and/or memories 146.Processor 144 may be a general purpose or specific purpose processor, anapplication specific integrated circuit (ASIC), one or more fieldprogrammable gate arrays (FPGAs), a group of processing components, orother suitable processing components. Processor 144 may be configured toexecute computer code or instructions stored in memory 146 or receivedfrom other computer readable media (e.g., CDROM, network storage, aremote server, etc.).

Memory 146 may include one or more devices (e.g., memory units, memorydevices, storage devices, etc.) for storing data and/or computer codefor completing and/or facilitating the various processes described inthe present disclosure. Memory 146 may include random access memory(RAM), read-only memory (ROM), hard drive storage, temporary storage,non-volatile memory, flash memory, optical memory, or any other suitablememory for storing software objects and/or computer instructions. Memory146 may include database components, object code components, scriptcomponents, or any other type of information structure for supportingthe various activities and information structures described in thepresent disclosure. According to some embodiments, memory 146 iscommunicably connected to processor 144 via processing circuit 142 andincludes computer code for executing (e.g., by processing circuit 142and/or processor 144) one or more of the operations described herein.

Memory 146 may include data management circuit 148, entity graph circuit150, analytics circuit 152, event management circuit 154, applicationscircuit 156, and/or user interface circuit 158. Data management circuit148 may be configured to collect, manage, and/or retrieve data. Invarious embodiments, data management circuit 148 receives data samplesfrom buildings 10 (e.g., via BMS 102, directly, etc.) and stores thedata samples in structured storage. For example, the data samples mayinclude data values for various data points. The data values may bemeasured and/or calculated values, depending on the type of data point.For example, a data point received from a temperature sensor may includea measured data value indicating a temperature measured by thetemperature sensor. Data management circuit 148 may receive data samplesfrom systems, components, and/or devices (e.g., IoT devices, sensors,etc.) within smart building environment 100 (e.g., remote systems andapplications 30, client devices 40, third party services 50, BMS 102,building subsystems 120, etc.) and/or from external systems (e.g., theInternet, etc.). For example, data management circuit 148 may receivetimeseries data from an occupancy sensor associated with one ofbuildings 10 and facilitate storage of the timeseries data in structuredstorage (e.g., in entity graph 170, etc.). As a further example, datamanagement circuit 148 may receive an electronic calendar event (e.g., ameeting invitation, etc.) from one of client devices 40 and facilitatestorage of the electronic calendar event in structure storage (e.g., inentity graph 170, etc.). In some embodiments, data management circuit148 uses or retrieves an entity graph (e.g., via entity graph circuit150, etc.) when organizing received data.

Entity graph circuit 150 may be configured to manage entity graph 170.In various embodiments, entity graph circuit 150 registers and managesvarious buildings (e.g., building 10, etc.), spaces, persons, subsystems(e.g., building subsystems 120, etc.), devices (e.g., IoT devices,etc.), events, and/or other entities in cloud building managementplatform 140. As described above, an entity may be any person, place,space, physical object, equipment, or the like. Further, an entity maybe any event, data point, record structure, or the like. Entities andentity graph 170 are described in detail below with reference to FIGS.3A-3B.

Analytics circuit 152 may be configured to analyze data to generateresults. For example, analytics circuit 152 may analyze sensor data(e.g., weight measurements, image data, audio data, etc.) from abuilding lobby to identify a user. As a further example, analyticscircuit 152 may apply fault detection rules to timeseries data from anHVAC system to detect a fault associated with the HVAC system. Invarious embodiments, analytics circuit 152 performs operations oninformation stored in entity graph 170. For example, analytics circuit152 may traverse entity graph 170 to retrieve context information (e.g.,energy usage, event activity, occupancy sensor data, HVAC controlschedules, etc.) associated with one of buildings 10, and analyze thecontext information to determine a user schedule associated with thebuilding (e.g., when the building is most heavily in use, etc.).

Event management circuit 154 may be configured to generate actions. Forexample, event management circuit 154 may receive event data frombuilding subsystems 120 (e.g., a security alarm, etc.), and generate aresponse based on the event data (e.g., cause BMS 102 to sound an alarm,etc.). In various embodiments, event management circuit 154 generatesactions dynamically. For example, event management circuit 154 mayinclude artificially intelligent agents configured to generate actionsin real-time based on received input. For example, event managementcircuit 154 may include an AI agent that dynamically generates anotification to an interested party in response to receiving anindication of an identified individual. As a further example, eventmanagement circuit 154 may receive a prediction from analytics circuit152 that a building component is about to enter a fault state and maydynamically generate a work order ticket for the building component inresponse to the received prediction.

Applications circuit 156 may be configured to facilitate a variety ofapplications associated with cloud building management platform 140. Forexample, applications circuit 156 may facilitate a smart messagingsystem, a personal comfort system, a health and wellness system, a smartparking lot system, a smart signage system, a smart lobby system, asmart meeting room system, an employee productivity system, and/or thelike. In various embodiments, applications circuit 156 facilitatesoperation of various systems that integrate with smart buildingenvironment 100. For example, applications circuit 156 may facilitate aFDD system that receives data from buildings 10 and generates faultindications associated with buildings 10.

User interface 158 may be configured to facilitate user interaction withcloud building management platform 140 and/or BMS 102. For example, auser may update personalized preferences associated with operation ofcloud building management platform 140 via user interface 158. In someembodiments, user interface 158 facilitates dynamic feedback (e.g., anatural user interface, etc). For example, user interface 158 mayfacilitate chatbot interaction, voice commands, user authentication,biometric feedback, or the like.

Referring now to FIG. 2, a building data platform 200 associated withthe smart building environment 100 is shown, according to an exemplaryembodiment. In various embodiments, cloud building management platform140 implements the architecture of building data platform 200. Buildingdata platform 200 is shown to include various layers 240. For example,layers 240 may include an interaction layer, an experience and outcomeservice layer, a policy and workflow management layer, datacollaboration layer, entity graph layer, and/or a system of systemintegration and data service layer. In various embodiments, buildingdata platform 200 includes interface(s) 202. For example, interface(s)202 may include a mobile phone application, a natural user interface(e.g., voice recognition, chatbot services, text recognition, etc.), abrowser application, a signage system, and/or the like. Interface(s) 202may facilitate human-to-machine interaction, information visualization,and user experience functions.

In various embodiments, building data platform 200 includes service(s)204. Service(s) 204 may include various user deliverables (e.g.,outcomes, experiences, etc.) facilitated by building data platform 200.For example, service(s) 204 may include meeting scheduling, energymanagement, building supplies replenishment, lobby management (e.g.,tracking a number of individuals in a building lobby and respondingbased on the number of individuals, etc.), facility management,productivity features (e.g., measuring and reporting on employeeproductivity, generating productivity suggestions, etc.), restroommanagement (e.g., monitoring a cleanliness of building restrooms, etc.),personal comfort management (e.g., adjusting building parameters basedon occupant comfort preferences, etc.), employee engagement features(e.g., monitoring and reporting on employee engagement, generatingengagement suggestions, etc.), parking management (e.g., dynamicallyassigning parking spaces, etc.), location services (e.g., generatingactions based on users' locations, etc.), health and wellness features(e.g., monitoring and reporting on employee health and wellness,generating health and wellness suggestions, etc.), smart security (e.g.,dynamically identifying individuals within a building, monitoringsecurity parameters associated with a building, etc.), branding features(e.g., dynamic digital signage updating based on an identity of aviewer, etc.), and/or utility features (e.g., monitoring and reportingon building utility usage, generating suggestions to reduce utilityconsumption and/or cost, etc.). In various embodiments, service(s) 204generate a virtual view of data from data collaboration, businessworkflows, and downstream sub-systems (e.g., sensors, actuators, etc.).

In various embodiments, building data platform 200 includes eventprocessing 206. Event processing 206 may facilitate generating actionsbased on received data. For example, event processing 206 may receive anindication of an event within buildings 10, retrieve informationassociated with the event, and trigger a set of predefined workflows toperform management policies. In various embodiments, event processing206 includes complex event processing and/or a business workflowprocessing engine (e.g., a rules engine, etc.) integrated with messagingand data models (e.g., event data models, etc.).

In various embodiments, building data platform 200 includes datasource(s) 208. For example, data source(s) 208 may include dataassociated with people, places, assets, and/or the like. In variousembodiments, building data platform 200 interacts with digital twinsincluded in entity graph 170. For example, building data platform 200may project a digital twin into a virtual data view to facilitateservice(s) 204. Data source(s) 208 may manage a database view of digitalrepresentation of people, places and assets. In various embodiments,data source(s) 208 represent heterogenous source data schema as an opensource common data model (e.g., a Brick Schema/extensions, etc.).

In various embodiments, entity graph layer 240 includes digital twin 210and context information 212. Digital twin 210 is a digitalrepresentation of spaces, assets, people, events, and/or anythingassociated with a building or operation thereof. In various embodiments,digital twin 210 is modeled in entity graph 170. In various embodiments,digital twins 210 include an active compute process. For example, adigital twin 210 may communicate with other digital twins 210, and tosense, predict and acts. In various embodiments, digital twin 210 isgenerated dynamically. For example, a digital twin 210 corresponding toa conference room may update its status by looking at occupancy sensorsor an electronic calendar (e.g., to turn its status “available” if thereis no show, etc.). In various embodiments, digital twin 210 and/orentity graph 170 include context information 212. Context information212 may include real-time data and a historical record of each system inthe environment (e.g., campus, building, facility, space, etc.). Contextinformation 212 may be stored in entity graph 170. In variousembodiments, context information 212 facilitates flexible data modelingfor advanced analytics and AI application in scenarios that model highlyinterconnected entities.

In various embodiments, building data platform 200 includes datamanagement 214 and/or operation(s) 216. Data management 214 may manage,retrieve, and transmit data to various systems. For example, datamanagement 214 may retrieve and transmit data integration protocols toOT sub-systems. Operation(s) 216 may include data storage attribution,schema management, smart entity management, information integration,schema transformation, intelligent messaging, batch analytics, streamanalysis, and/or device assurance.

In various embodiments, building data platform 200 includesadministration and monitoring 220 and/or identity and security 230.Administration and monitoring 220 may facilitate various administrativefunctions and/or operations. For example, an administrator may viewmemory allocation analytics associated with building data platform 200(e.g., how much memory does entity graph 170 occupy, etc.). Identity andsecurity 230 may facilitate various security features. For example,identity and security 230 may encrypt personally identifiableinformation (PII) included in digital twin 210.

Referring now to FIGS. 3A-3B, an entity graph 300 is shown in greaterdetail, according to an exemplary embodiment. In brief overview, entitygraphs such as entity graph 170 and/or entity graph 300 are structureddata stored in memory (e.g., a database, memory 146, etc.). Entitygraphs such as entity graph 300 and/or entity graph 170 may includedigital twins. Digital twins may be digital representations of realworld spaces, equipment, people, and/or events. In various embodiments,digital twins represent buildings, building equipment, people associatedwith buildings, and/or events associated with buildings (e.g., buildings10, etc.). An entity graph may include nodes and edges, where each nodeof the entity graph represents an entity and each edge is directed(e.g., from a first node to a second node) and represents a relationshipbetween entities (e.g., indicates that the entity represented by thefirst node has a particular relationship with the entity represented bythe second node). For example, an entity graph may be used to representa digital twin of a person.

Entities can be things and/or concepts related to spaces, people, and/orasset. For example, the entities could be “B7F4 North”, “Air HandlingUnit,” and/or “meeting room.” The nodes can represent nouns while theedges can represent verbs. For example, the edges can be “isA,”“hasPart,” and/or “feeds.” In various embodiments, the edges representrelationships. While the nodes represent the building and itscomponents, the edges describe how the building operates. The nodes andedges together create a digital twin of a particular building. In someembodiments, the entities include properties or attributes describingthe entities (e.g., a thermostat may have a particular model numberattribute). The components of the entity graph form large networks thatencode semantic information for a building.

The entity graph is configured to enable flexible data modeling foradvanced analytics, control, and/or artificial intelligenceapplications, in some embodiments. These applications may require, orbenefit from information modeling including interconnected entities.Other data modeling techniques based on a table, a hierarchy, adocument, and/or a relational database may not be applicable. The entitygraph can be a foundational knowledge management layer to support otherhigher level applications, which can be, complex root cause, impactanalysis, building powerful recommendation engines, product taxonomyinformation services, etc. Such a multilayer system, a system of systemtopologies, can benefit from an underlying entity graph.

The entity graph can be a data contextualization layer for alltraditional and/or artificial intelligence applications. The entitygraph can be configured to capture evidence that can be used toattribute the strengths of entity relationships within the entity graph,providing the applications which utilize the entity graph with contextof the systems they are operating. Without context (e.g., who the useris, what the user is looking for, what the target of a user request is,e.g., find a meeting room, increase a temperature in my office) theseapplications may never reach their full potential. Furthermore, theentity graph provides a native data structure for constructing questionand answer type systems, e.g., a chatbot, that can leverage andunderstand intent.

The entity graph may not be a configuration database but may be adynamic representation of a space, person, event, and the like. Theentity graph can include operational data from entities which itrepresents, e.g., sensors, actuators, card access systems, occupancy ofa particular space, thermodynamics of the space as a result ofactuation, etc. The entity graph can be configured to continually,and/or periodically, ingest new data of the space and thus the entitygraph can represent a near real-time status of cyber-physical entitiesand their inter-relationships. For this reason, artificial intelligencecan be configured to introduce a virtual entity and new semanticrelationships among entities, in some embodiments.

The entity graph is configured to facilitate adaptive controls, in someembodiments. The entity graph can be configured to adapt and learn overtime. The entity graph can be configured to enable dynamic relationshipsbetween building information and other facility and enterprise systemsto create new insights and drive new optimization capabilities forartificial intelligence systems. As relationships can be learned overtime for the entity graph, the artificial intelligence systems and alsolearn overtime based on the entity graph. Entity graphs (e.g., spacegraphs, etc.) are described in greater detail with reference to U.S.patent application Ser. No. 16/260,078, filed on Jan. 28, 2019, theentire disclosure of which is incorporated by reference herein.

Entity graph 300 includes entities 302-358 (stored as nodes withinentity graph 300) describing spaces, equipment, events, and people(e.g., business employees, etc.). In various embodiments, entities302-358 are associated with or otherwise include agents (e.g., agentsmay be assigned to/associated with entities, etc.). Additionally oralternatively, agents may be represented as nodes in entity graph 300(e.g., agent entities, etc.). Furthermore, relationships are shownbetween entities 302-358 directionally describing relationships betweentwo of entities 302-358 (stored as edges within entity graph 300). Invarious embodiments, cloud building management platform 140 may traverseentity graph 300 to retrieve a description of what types of actions totake for a certain device, what the current status of a room is (e.g.,occupied or unoccupied), etc.

As an example, entity graph 300 illustrates an office space called “B7F5North” of a building. A smart TV referred to as “Smart TV 001” has adirectional relationship to the space referred to as “B7F5 North.” Therelationship may be an edge “hasLocation” indicating that the device(e.g., the smart TV represented by entity 324) has a location (e.g., thespace represented by entity 302). Furthermore, a second edge “contains”from entity 302 to entity 324 indicates that the location (e.g., thespace represented by entity 302) includes the device (e.g., the smart TVrepresented by entity 324). In some embodiments, entity graph circuit150 generates the nodes of entity graph 300 from various data sourcesincluding a building automation system, a security system, a fire alarm,human resources system, and/or building information model (BIM) files(e.g., through an entity name matching process, etc.). Furthermore,semantic relationships may be extracted from the building information byentity graph circuit 150. In some embodiments, only a singlerelationship exists between entities. In some embodiments, nodes andedges are determined dynamically as building data that is received andingested into entity graph 300. For example, cloud building managementplatform 140 is configured to identify a door lock and card reader andgenerate a number of nodes and edges in entity graph 300 representingthe card reader controller operation of the door lock.

Smart Parking Lot System

Various embodiments disclosed herein describe example implementations ofa smart parking lot system. The smart parking lot systems describedherein may facilitate individual user experiences. For example, a smartparking lot may identify a vehicle and/or a user associated with avehicle and react based on the identified vehicle and/or user. In someembodiments, a smart parking lot may identify a vehicle, determine thatan assigned parking space in the smart parking lot corresponds to thevehicle, and grant the vehicle access to the assigned parking space. Invarious embodiments, the smart parking lot system described herein mayintegrate/interface with an external system (e.g., BMS 102, cloudbuilding management platform 140, entity graph 170, etc.). For example,a smart parking lot may reference entity graph 170 to facilitate vehicleand/or user identification. In various embodiments, the smart parkinglot system described herein facilitates frictionless access to a campus,building, parking lot, and/or parking space. Additionally oralternatively, the smart parking lot system described herein mayfacilitate resource (e.g., time, space, energy, money, travel distance,user satisfaction, etc.) optimization. For example, a smart parking lotmay dynamically assign parking spaces to users based on contextinformation of the users (e.g., a user who is running late for a meetingmay be assigned a parking space within a short walking distance to themeeting, etc.).

As a non-limiting example, a smart parking lot may detect the presenceof a vehicle near an access control device (e.g., a vehicle gate, etc.)associated with the smart parking lot. The smart parking lot may capturean image of the license plate of the vehicle and thereby determine alicense plate number of the vehicle. Using the license plate number, thesmart parking lot may determine an individual associated with thevehicle (e.g., via the entity graph 170). The smart parking lot mayretrieve context information associated with the individual. Forexample, the smart parking lot may retrieve access rights and a scheduleof the individual. The smart parking lot may determine, based on theschedule of the individual, that the individual has an upcoming meeting.Furthermore, the smart parking lot may determine, based on the accessrights of the individual, that the individual is authorized for aparking space in the smart parking lot. The smart parking lot mayanalyze the context information and parking demands associated with atime period the individual is expected to be in the smart parking lot(e.g., currently assigned parking spaces, parking space amenities, etc.)and dynamically assign the individual a parking space. For example, thecontext information may indicate that the individual is physicallydisabled and the smart parking lot may assign the individual anavailable parking space nearby to an elevator that travels to a floorthat includes a conference room corresponding to the upcoming meeting.The smart parking lot may control access control devices to grant thevehicle access to the assigned parking space. Additionally oralternatively, the smart parking lot may display directions to theindividual describing a route to the assigned parking space. In someembodiments, the smart parking lot may display turn-by-turn directionson digital signage located throughout the smart parking lot.

As another non-limiting example, a smart parking lot may detect thepresence of a mobile device near a drop-off location associated with thesmart parking lot. For example, the smart parking lot may detect themobile device using near-field-communication (NFC), Bluetooth, WiFi,cellular connections (e.g., via a 4G or 5G access point/small cell basestation). The smart parking lot may receive an identifier from themobile device. Using the identifier, the smart parking lot may determinean individual associated with the mobile device (e.g., via the entitygraph 170). The smart parking lot may retrieve context informationassociated with the individual. For example, the smart parking lot mayretrieve an organizational role (e.g., title, position, organizationalseniority, etc.) and historical information associated with theindividual. The smart parking lot may determine, based on theorganizational role of the individual, that the individual is avery-important-person (VIP). Furthermore, the smart parking lot maydetermine, based on the historical information associated with theindividual, that the individual has never before visited a buildingassociated with the smart parking lot. The smart parking lot may analyzethe context information and notify an employee escort that theindividual has arrived at the building. The employee escort may respondto the notification with a personalized message and directions for theindividual and the smart parking lot may display the personalizedmessage and directions to the individual. For example, the smart parkinglot may display the personalized message and directions on digitalsignage located nearby the drop-off location.

As another non-limiting example, a smart parking lot may detectinformation associated with vehicles using the smart parking lot. Forexample, the smart parking lot may capture an image of the vehicles anduse feature recognition to determine a make and model of the vehicles.The smart parking lot may generate a data structure recording theinformation associated with the vehicles using the smart parking lot.Using the data structure, the smart parking lot may generate a model ofthe user population of the smart parking lot. For example, the model mayinclude how many vehicles use the smart parking lot over time.Additionally or alternatively, the model may include types of vehicles(e.g., electric, combustion-engine, etc.) that use the smart parkinglot. The smart parking lot may analyze the model and determine changesin the user population of the smart parking lot. In some embodiments,the smart parking lot may determine that a large portion of the userpopulation includes electric vehicles. Based on the determined changesin the user population, the smart parking lot may dynamically suggestchanges to the smart parking lot. For example, the smart parking lot maysuggest installing more electric chargers in the smart parking lot basedon determining that a large portion of the user population includeselectric vehicles. Additionally or alternatively, the smart parking lotmay suggest increasing a price of parking spaces during winter monthsbased on determining that a demand for parking in the smart parking lotincreases during winter months.

As another non-limiting example, a smart parking lot may monitorresource consumption associated with the smart parking lot. For example,the smart parking lot may monitor an electricity consumption associatedwith the smart parking lot. Additionally or alternatively, the smartparking lot may monitor resource consumption associated with a facilityassociated with the smart parking lot (e.g., an attached building,etc.). For example, the smart parking lot may receive an electricityconsumption associated with an attached building from a buildingmanagement system of the attached building. The smart parking lot mayanalyze the resource consumption to determine actions. For example, fora smart parking lot sharing an electrical transformer with an attachedbuilding, the smart parking lot may determine, based on the electricityconsumption associated with the smart parking lot and the electricityconsumption associated with the attached building, that an additionalload associated with electric vehicle charging would overload theelectrical transformer. Based on the determination, the smart parkinglot may transmit a notification to users of the smart parking lotindicating that electric vehicle charging is unavailable untilelectrical demand associated with the smart parking lot and the attachedbuilding decreases to an acceptable level.

Referring now to FIGS. 4A-4B, a parking lot management system includingsmart parking lot system 1100 is shown, according to an exemplaryembodiment. In various embodiments, smart parking lot system 1100 isconfigured to manage various processes associated with scheduling,assigning, and implementing parking in a parking lot as well asimprovements thereto. For example, smart parking lot system 1100 isconfigured to identify an individual associated with a vehicle enteringsmart parking lot 1110, retrieve context information associated with theindividual, dynamically assign the individual a parking space based onthe context information, and direct the individual to the parking space.As another example, smart parking lot system 1100 is configured todetect when an individual has arrived at an assigned parking space,determine an interested party (e.g., an employee escort, etc.), andnotify the interested party that the individual has arrived. In variousembodiments, smart parking lot system 1100 is configured to communicatewith external systems via network 20. For example, smart parking lotsystem 1100 may communicate with client devices 40, building managementsystem 102, cloud building management platform 140, and smart parkinglot 1110.

In various embodiments, smart parking lot system 1100 implements and/orfacilitates various features 1101 (e.g., as shown in FIG. 4B, etc.). Forexample, smart parking lot system 1100 may implement emissionsmonitoring 1163 in smart parking lot 1110, reservations scheduling 1111(e.g., managing and reserving parking spaces within smart parking lot1110, etc.), digital signage control 1109 (e.g., controlling digitalsignage located in smart parking lot 1110, etc.), lighting control 1121(e.g., controlling lighting within smart parking lot 1110, etc.),transportation management 1115, arrival management 1113 (e.g.,generating notification in response to detecting an employee arrive atwork, directing visitors, etc.), payment management 1119 (e.g.,receiving and processing payment for use of smart parking lot 1110,etc.), parking monitoring 1107 (e.g., monitoring vehicles/individualsusing smart parking lot 1110, etc.), and/or visitor management 1117(e.g., identifying visitors, communicating with visitors, building aprofile of visitors, etc.). In some embodiments, smart parking lotsystem 1110 facilitates alternate parking 1123. For example, smartparking lot system 1110 may determine that a parking lot is full anddirect individuals to alternative parking (e.g., another parking lotnearby, etc.). In some embodiments, smart parking lot system 1110facilitates renewals 1127 of parking spaces. For example, a user mayselect a payroll 1125 option to have parking expense (e.g., monthlyrent, etc.) automatically deducted from their salary. Additionally oralternatively, smart parking lot system 1110 may include kiosks 1129 tofacilitate processing payments. In some embodiments, smart parking lotsystem 1100 includes digital signage 1109 to display information tousers (e.g., directions, instructions, etc.).

In some embodiments, smart parking lot system 1100 facilitates use ofunused assigned spots 1131. For example, smart parking lot system 1100may determine that an individual is not planning on using their assignedparking space (e.g., by detecting an out of office setting on anelectronic calendar of the user, by receiving occupancy data fromsensors 1116, etc.) during a time period and may reassign the parkingspace to other individuals during the time period. In some embodiments,smart parking lot system 1100 facilitates parking lot scheduling 1135.For example, smart parking lot system 1100 may analyze user arrivaltimes and direct the users to reduce traffic congestion (e.g., disperseassigned parking space so that multiple vehicles don't have to accessthe same part of the parking lot at the same time, etc.). In someembodiments, smart parking lot system 1100 facilitates license platerecognition 1137. For example, smart parking lot system 1100 may grant avehicle access to smart parking lot 1110 based on identifying a licenseplate of the vehicle and/or may identify a custom parking space for thevehicle based on identifying a license plate of the vehicle. In someembodiments, smart parking lot system 1100 facilitates badge scanning1139. For example, an employee may scan an identifier badge to gainaccess to smart parking lot 1110. Additionally or alternatively, anemployee may be detected via near-field-communication 1141. For example,smart parking lot system 1100 may detect a NFC device mounted to anindividual's vehicle and grant the individual access to smart parkinglot 1110.

In some embodiments, smart parking lot system 1100 facilitates lightingopen parking spaces 1143. For example, smart parking lot system 1100 mayilluminate all open parking spaces. In some embodiments, smart parkinglot system 1100 facilitates occupancy sensing 1149. For example, smartparking lot system 1100 may determine if a user has arrived at theircustom parking space via sensors 1116 and greet the user. In someembodiments, smart parking lot system 1100 facilitates ride sharefeatures 1151. For example, smart parking lot system 1100 may retrieveand display transportation schedules 1161 (e.g., bus schedules, trainschedules, ride-sharing service prices, etc.). As a further example,smart parking lot system 1100 may generate rewards 1157 for carpooling1155. For example, smart parking lot system 1100 may facilitate employeerecognition 1159 for those that carpool (e.g., via a group-email, groupreception, parties, etc.). In some embodiments, smart parking lot system1100 may facilitates incentives for alternate transportation 1153. Forexample, smart parking lot system 1100 may offer coupons to employeesthat carpool. In some embodiments, smart parking lot system 1100monitors air flow 1165 and/or CO₂ 1167. For example, smart parking lotsystem 1100 may generate an alert if smart parking lot 1110 lacks freshair (e.g., emissions levels are too high, etc.). In some embodiments,smart parking lot system 1100 facilitates parking space reservations1169. For example, a visitor may reserve a parking space for a visit tobuilding 10. In some embodiments, smart parking lot system 1100facilitates notifications 1171. For example, smart parking lot system1100 may generate overstay warnings 1173 to users when their parkingreservation is about to expire. In some embodiments, smart parking lotsystem 1100 retrieves visitor profiles 1175. For example, smart parkinglot system 1100 may retrieve a visitor profile from a calendar invite todetermine a license plate associated with a vehicle of the visitor.

In various embodiments, smart parking lot system 1100 is integrated withinputs 1103. For example, smart parking lot system 1100 may receiveinformation from smart parking lot 1110, employee profile(s) 1183,parking schedule 1181, entity graph 170, digital twin 1177, and/orcontext information 1179 as described herein. In various embodiments,smart parking lot system 1100 includes interfaces 1105. For example,smart parking lot system 1100 may interface with smart meeting roomsystem 1185, smart parking lot 1110, and/or smart lobby system 1187. Forexample, smart parking lot system 1100 may receive meeting schedulesand/or conference room locations from smart meeting room system 1185. Asa further example, smart parking lot system 1100 may interface withsmart lobby system 1187 to notify a lobby receptionist that a visitorhas arrived in smart parking lot 1110.

Smart parking lot 1110 may be any parking lot configured to communicatewith smart parking lot system 1100. Smart parking lot 1110 may includeuser interface devices 1112, access control devices 1114, and/or sensors1116. User interface devices 1112 may include displays, voiceassistants, gesture detectors, tablets, control panels, remotes, and/orany other user interface device/systems. In various embodiments, a usermay interact with smart parking lot 1110 and/or smart parking lot system1100 via user interface devices 1112. For example, a user may check-inat an access gate of smart parking lot 1110 using user interface devices1112. In some implementations, user interface devices 1112 may not be apart of smart parking lot system 1100, but may be user devices such assmartphones from which smart parking lot system 1100 receives inputdata. Access control devices 1114 may include gates, turnstiles, ramps,doors, barriers, and/or any other devices or structures configured tocontrol access to smart parking lot 1110. Sensors 1116, may includeoccupancy sensors, cameras, biometric sensors, light sensors, weightsensors, temperature sensors, microphones, and any other type of sensor.In various embodiments, sensors 1116 collect information about a vehicleand/or individual in or around smart parking lot 1110 and transmit theinformation to smart parking lot system 1100. For example, sensors 1116may capture an image of a vehicle entering smart parking lot 1110,determine a make and model of the vehicle, and transmit the make andmodel information to smart parking lot system 1100. In some embodiments,sensors 1116 include emissions sensors. For example, sensors 1116 maydetect CO₂ levels within smart parking lot 1110 and smart parking lotsystem 1100 may control BMS 102 to increase fresh airflow to smartparking lot system 1100.

Smart parking lot system 1100 includes communications interface 1130,processing circuit 1140, and database 1160. Communications interface1130 is configured to facilitate communication between smart parking lotsystem 1100 and external systems. For example, communications interface1130 may facilitate communication between smart parking lot system 1100and smart parking lot 1110. In some embodiments, communicationsinterface 1130 is similar to communications interface 104 describedabove with reference to FIG. 1A. Database 1160 is configured to storeinformation associated with smart parking lot system 1100. For example,smart parking lot system 1100 may determine a model of a user populationof smart parking lot 1110 and may store the model in database 1160.Database 1160 may be internal storage or external storage. For example,database 1160 may be internal storage with relation to smart parking lotsystem 1100, and/or may include a remote database, cloud-based datahosting, or other remote data storage.

Processing circuit 1140 includes processor 1142 and memory 1144. Smartparking lot system 1100 may include one or more processing circuits 1140including one or more processors 1142 and one or more memories 1144.Each of the processors 1142 can be a general purpose or specific purposeprocessor, an application specific integrated circuit (ASIC), one ormore field programmable gate arrays (FPGAs), a group of processingcomponents, or other suitable processing components. Each of theprocessors 1142 is configured to execute computer code or instructionsstored in memory 1144 or received from other computer readable media(e.g., CDROM, network storage, a remote server, etc.).

Memory 1144 may include one or more devices (e.g., memory units, memorydevices, storage devices, or other computer-readable media) for storingdata and/or computer code for completing and/or facilitating the variousprocesses described in the present disclosure. Memory 1144 may includerandom access memory (RAM), read-only memory (ROM), hard drive storage,temporary storage, non-volatile memory, flash memory, optical memory, orany other suitable memory for storing software objects and/or computerinstructions. Memory 1144 may include database components, object codecomponents, script components, or any other type of informationstructure for supporting the various activities and informationstructures described in the present disclosure. Memory 1144 may becommunicably connected to processor(s) 1142 via processing circuit 1140and may include computer code for executing (e.g., by processor 1142)one or more processes described herein.

Memory includes identification circuit 1150, context circuit 1152,notification circuit 1154, trends circuit 1156, and resource managementcircuit 1158. Identification circuit 1150 may receive data from sensors1116 and identify vehicles and/or individuals. For example,identification circuit 1150 may receive an image of a vehicle licenseplate and identify a license plate number from the image and anindividual associated with the license plate number. In someembodiments, identification circuit 1150 may use image recognition todetermine a license plate number based on an image, search a graphstructure using the license plate number to determine an individualhaving a vehicle with the license plate number, and retrieve a digitaltwin of the individual (e.g., structured data associatedwith/representing the individual, etc.). In various embodiments,identification circuit 1150 queries structured data to facilitateidentification. For example, identification circuit 1150 may queryentity graph 170 with biometric data (e.g., facial image data, etc.) toidentify an individual. As a further example, identification circuit1150 may query a database of digital twins to identify an individualhaving a specific assigned parking space. In some embodiments,identification circuit 1150 identifies individuals using biometric data.For example, identification circuit 1150 may use facial recognitionand/or voice recognition to identify an individual dropped off at adrop-off location nearby smart parking lot 1110. Additionally oralternatively, identification circuit 1150 may identify an individualusing information received from a mobile device associated with theindividual. For example, identification circuit 1150 may detect a mobilephone using NFC, receive an identifier from the mobile phone, and searcha graph structure (e.g., entity graph 170, etc.) to determine anindividual associated with the mobile phone.

Context circuit 1152 is configured to analyze context informationassociated with an identified individual. For example, context circuit1152 may analyze a schedule of an individual, determine that theindividual has a meeting that they are late for, and facilitateassigning the individual a parking space that is close to a location ofthe meeting. As a further example, context circuit 1152 may analyze adigital twin associated with an individual, determine that theindividual is mobility restricted, and identify personnel to assist theindividual. In various embodiments, context circuit 1152 may assignparking spaces for vehicles and/or individuals. For example, contextcircuit 1152 may analyze parking demands associated with smart parkinglot 1110 (e.g., previously assigned spaces, parking demand, etc.) todetermine a parking space for a visitor. In some embodiments, entitygraph 170 includes context information. As a further example, contextcircuit 1152 may facilitate custom parking spaces 1133 (e.g., parkingspaces customized to an individual, etc.). For example, context circuit1152 may identify that an individual has a custom parking space andsmart parking lot system 1100 may assign the individual to the customparking space. Custom parking spaces may be parking spaces customized toan individual. For example, a custom parking space may includeindividualized signage, lighting, audio greeting, appearance, and thelike. In some embodiments, context circuit 1152 facilitates ride shareincentives. For example, context circuit 1152 may determine when a userhas engaged in ride sharing (e.g., use of public transportation,carpooling, etc.) and may generate a reward for the user (e.g., a publicrecognition email, monetary reward, etc.).

Notification circuit 1154 is configured to generate and transmitnotifications. For example, notification circuit 1154 may receive anindication that an individual has arrived at smart parking lot 1110 andreceive an indication of an interested person and generate anotification to the interested person indicating that the individual hasarrived at smart parking lot 1110. In some embodiments, notificationcircuit 1154 may receive sensor data from sensors 1116 indicating thatan individual has arrived at an assigned parking space, receive contextinformation including an identity of an interested person, and transmita notification to the interested person indicating a location of theindividual. Additionally or alternatively, notification circuit 1154 maycontrol user interface devices 1112. For example, user interface devices1112 may include digital signage located throughout smart parking lot1110 and notification circuit 1154 may be configured to transmit userinterface elements to the digital signage for displaying to viewers. Forexample, notification circuit 1154 may control user interface devices1112 to display turn-by-turn directions to an individual driving avehicle to guide the individual to an assigned parking space. In variousembodiments, notification circuit 1154 facilitates two-waycommunication. For example, notification circuit 1154 may send anotification to an employee indicating that a guest of the employee hasarrived at smart parking lot 1110, may receive a response from theemployee (e.g., a personalized message, etc.), and may display theresponse to the guest (e.g., via user interface devices 1112, etc.). Insome embodiments, user interface devices 1112 include lights. Forexample, smart parking lot system 1100 may control lights within smartparking lot 1110 to guide users to an exit in the event of an emergency.As a further example, smart parking lot system 1100 may control lightsto illuminate a parking space assigned to an individual. Additionally oralternatively, user interface devices 1112 may include kiosks. Forexample, smart parking lot 1110 may include kiosks to facilitate paymentfor use of smart parking lot 1110. In some embodiments, an employee mayrenew a parking pass using a kiosk and have the cost of renewal deductedfrom their pay automatically. In some embodiments, user interfacedevices 1112 may direct users to alternate parking. For example, smartparking lot system 1100 may detect that smart parking lot 1100 is fulland control digital signage to direct arriving vehicles to an alternateparking lot. In some embodiments, notification circuit 1154 may notify auser when their parking time is about to expire. For example, a user mayhave a two hour parking pass, smart parking lot system 1100 maydetermine that the parking pass expires in ten minutes, and notificationcircuit 1154 may send a text-message to a mobile device associated withthe user indicating that the parking pass is about to expire.

Trends circuit 1156 is configured to monitor a user population of smartparking lot 1110 and determine trends associated with smart parking lot1110. For example, trends circuit 1156 may receive an indication of amake and model of vehicles entering smart parking lot 1110, generate amodel of a user population of smart parking lot 1110, and determineactions based on the model. In some embodiments, trends circuit 1156 maygenerate a model of a user population of smart parking lot 1110,determine that there is increased demand for use of smart parking lot1110, and generate a suggestion to increase a price associated withsmart parking lot 1110 based on the increased demand. In variousembodiments, the model of smart parking lot 1110 is a digital twin ofsmart parking lot 1110. For example, trends circuit 1156 may build anentity graph (e.g., such as entity graph 170, etc.) corresponding tosmart parking lot 1110 and a user population of smart parking lot 1110.In some embodiments, trends circuit 1156 may build an entity graphincluding a make and model of vehicles using smart parking lot 1110, mayanalyze the entity graph over time to determine that a demand forelectric vehicle charging is on track to exceed a supply of electricvehicle charging, and may generate a recommendation to install moreelectric vehicle charging stations in smart parking lot 1110 to meet theexpected demand.

Resource management circuit 1158 is configured to monitor resourceconsumption associated with smart parking lot 1110 and/or associatedentities (e.g., building 10, etc.) and generate notifications. Forexample, resource management circuit 1158 may monitor an electricityusage of building 10 and smart parking lot 1110, determine that a powersupply supplying power to building 10 and smart parking lot 1110 cannotsupport an additional load associated with electric vehicle charging,and may transmit a notification to users of smart parking lot 1110 thatelectric vehicle charging will not be offered in smart parking lot 1110at this time. Additionally or alternatively, resource management circuit1158 may be configured to integrate smart parking lot 1110 into anenergy optimization system associated with building 10. For example,resource management circuit 1158 may at least partially couple tobuilding management system 102 and electrical subsystem 126 may analyzeenergy consumption of building 10 and smart parking lot 1110 tofacilitate efficient resource distribution/usage. In variousembodiments, resource management circuit 1158 at least partiallyintegrates with a digital twin of smart parking lot 1110 and/or building10 to facilitate resource management. For example, resource managementcircuit 1158 may generate an entity graph (e.g., entity graph 170, etc.)including resource consumption information associated with smart parkinglot 1110.

Referring now to FIG. 5, a method 1200 of dynamically determining aparking space is shown, according to an embodiment. In variousembodiments, smart parking lot system 1100 at least partially implementsmethod 1200. At step 1210, smart parking lot system 1100 detects avehicle that enters into a parking lot. In various embodiments, theparking lot is smart parking lot 1110. In various embodiments, step 1210includes smart parking lot system 1100 receiving sensor data fromsensors 1116. For example, a motion detector positioned near an entranceto smart parking lot 1110 may detect a vehicle entering smart parkinglot 1110 and send an indication to smart parking lot system 1100.Additionally or alternatively, smart parking lot system 1100 may receiveposition data from a mobile device associated with a vehicle and/orindividual. For example, smart parking lot system 1100 may receive GPSdata from a client device 40 associated with an individual indicatingthat the individual is at an entrance to smart parking lot 1110.

At step 1220, smart parking lot system 1100 identifies an individualassociated with the vehicle. In various embodiments, step 1220 includessmart parking lot system 1100 receiving sensor data from sensors 1116.For example, sensors 1116 may capture an image of the vehicle and sendthe image to smart parking lot system 1100. In various embodiments,smart parking lot system 1100 may use image recognition to identify alicense plate number from the image. Additionally or alternatively,smart parking lot system 1100 may use image recognition to identify abiometric feature associated with an individual in the vehicle. Forexample, smart parking lot system 1100 may use facial recognition toidentify a face of a driver of the vehicle. In various embodiments, step1220 includes querying a database (e.g., entity graph 170, a digitaltwin, etc.) using the sensor data. For example, smart parking lot system1100 may receive image data, apply image recognition to identify alicense plate number from the image data, and query entity graph 170with the license plate number to identify an individual associated withthe license plate number. As a further example, smart parking lot system1100 may receive image data from sensors 1116, apply facial recognitionto identify facial features from the image data, and query a databaseincluding digital twins to identify an individual based on the facialfeatures. Additionally or alternatively, smart parking lot system 1100may identify an individual associated with the vehicle using anidentifier associated with the vehicle and/or the individual. Forexample, sensors 1116 may receive a NFC signal from a device associatedwith the vehicle and may query entity graph 170 using information fromthe NFC signal to identify the individual. As a further example, sensors1116 may receive an identifier (e.g., a scanned barcode, etc.) from amobile device associated with the individual (e.g., client devices 40,etc.) and query entity graph 170 using the identifier to identify theindividual.

In various embodiments, method 1200 includes steps 1210 and 1220 or step1230. In some embodiments, method 1200 includes steps 1210, 1220, and1230. At step 1230, smart parking lot system 1100 receives an assignmentrequest including an identifier. For example, smart parking lot system1100 may receive a request for a parking space from a mobile device(e.g., a client device 40, etc.). In some embodiments, a visitor mayreceive an electronic calendar invitation to a meeting at building 10and may generate a parking space request that is sent to smart parkinglot system 1100 including an identifier associated with the visitor. Forexample, the identifier may include a name of the visitor. In variousembodiments, step 1230 includes identifying an individual based on theidentifier. For example, smart parking lot system 1100 may query adatabase having digital twins to identify an individual based on theidentifier. In some embodiments, smart parking lot system 1100 may queryentity graph 170 using the identifier to identify the visitor.

At step 1240, smart parking lot system 1100 retrieves contextinformation corresponding to the individual. In various embodiments,step 1240 includes querying entity graph 170 to retrieve a digital twinassociated with the individual. In various embodiments, the digital twinincludes information describing the individual. For example, the digitaltwin may include a schedule of the individual, physical characteristicsof the individual (e.g., weight, hair color, facial features, physicalimpairments, etc.), a role and/or organizational role of the individual,an assigned parking space associated with the individual, healthinformation associated with the individual, and/or any other informationdescribing the individual. In some embodiments, step 1240 includesretrieving context information associated with smart parking lot 1110.For example, smart parking lot system 1100 may retrieve a digital twinof smart parking lot 1110. In various embodiments, the digital twin ofsmart parking lot 1110 includes parking demand information associatedwith smart parking lot 1110 and/or a parking availability scheduleassociated with smart parking lot 1110. For example, smart parking lotsystem 1100 may retrieve a schedule including an indication of availableparking space associated with smart parking lot 1110.

At step 1250, smart parking lot system 1100 dynamically determines afirst parking space based on the context information and availableparking spaces. In various embodiments, smart parking lot system 1100may at least partially implement a machine learning system to performstep 1250. In various embodiments, smart parking lot system 1100dynamically determines the first parking space by determining a firstparking space that best suits the individual given the contextinformation. For example, smart parking lot system 1100 may retrievecontext information indicating that an individual is late for a meeting(e.g., by referencing a schedule of the individual, etc.) and maydynamically assign the individual a parking space that is within a shortwalking distance to a location of the meeting. As a further example,smart parking lot system 1100 may retrieve context informationindicating that an individual has mobility difficulties (e.g., byreferencing physical characteristics of the individual included in adigital twin of the individual, etc.) and may dynamically assign theindividual a parking space that is nearby a mobility assistance device(e.g., a motorized scooter, etc.). In another example, smart parking lotsystem 1100 may retrieve context information including a role of theindividual and assign a space based on the role (e.g., if the individualhas a particular role, or a role above a certain threshold level in acorporate hierarchical structure, the individual may be assigned aparticular parking space, such as one close to an elevator/door or onethat is in a climate-controlled area).

At step 1260, smart parking lot system 1100 provides an indication ofthe first parking space. For example, smart parking lot system 1100 maysend a notification to a mobile device associated with the individual(e.g., a client device 40, etc.). In some embodiments, a visitor mayreceive an electronic calendar invitation to a meeting at building 10,may generate a parking space request for smart parking lot system 1100,and may receive an email reservation from smart parking lot system 1100including an assigned parking space. In some embodiments, step 1260includes controlling user interface devices 1112. For example, smartparking lot system 1100 may control digital displays located throughoutsmart parking lot 1110 to display turn-by-turn directions to guide theindividual to an assigned parking space.

Referring now to FIG. 6, a method 1300 of notifying an interested personis shown, according to an embodiment. In various embodiments, smartparking lot system 1100 at least partially implements method 1300. Atstep 1310, smart parking lot system 1100 detects a vehicle that entersinto a parking lot. In various embodiments, the parking lot is smartparking lot 1110. In various embodiments, step 1310 includes smartparking lot system 1100 receiving sensor data from sensors 1116. Forexample, a motion detector positioned near an entrance to smart parkinglot 1110 may detect a vehicle entering smart parking lot 1110 and sendan indication to smart parking lot system 1100. Additionally oralternatively, smart parking lot system 1100 may receive position datafrom a mobile device associated with a vehicle and/or individual. Forexample, smart parking lot system 1100 may receive GPS data from aclient device 40 associated with an individual indicating that theindividual is at an entrance to smart parking lot 1110.

At step 1320, smart parking lot system 1100 identifies an individualassociated with the vehicle. In various embodiments, step 1320 includessmart parking lot system 1100 receiving sensor data from sensors 1116.For example, sensors 1116 may capture an image of the vehicle and sendthe image to smart parking lot system 1100. In various embodiments,smart parking lot system 1100 may use image recognition to identify alicense plate number from the image. Additionally or alternatively,smart parking lot system 1100 may use image recognition to identify abiometric feature associated with an individual in the vehicle. Forexample, smart parking lot system 1100 may use facial recognition toidentify a face of a driver of the vehicle. In various embodiments, step1320 includes querying a database (e.g., entity graph 170, a digitaltwin, etc.) using the sensor data. For example, smart parking lot system1100 may receive image data, apply image recognition to identify alicense plate number from the image data, and query entity graph 170with the license plate number to identify an individual associated withthe license plate number. As a further example, smart parking lot system1100 may receive image data from sensors 1116, apply facial recognitionto identify facial features from the image data, and query a databaseincluding digital twins to identify an individual based on the facialfeatures. Additionally or alternatively, smart parking lot system 1100may identify an individual associated with the vehicle using anidentifier associated with the vehicle and/or the individual. Forexample, sensors 1116 may receive a NFC signal from a device associatedwith the vehicle and may query entity graph 170 using information fromthe NFC signal to identify the individual. As a further example, sensors1116 may receive an identifier (e.g., a scanned barcode, etc.) from amobile device associated with the individual (e.g., client devices 40,etc.) and query entity graph 170 using the identifier to identify theindividual.

In various embodiments, method 1300 includes steps 1310 and 1320 orsteps 1330 and 1340. In some embodiments, method 1300 includes steps1310, 1320, 1330, and 1340. For example, method 1300 may vary dependingon how an individual arrives at smart parking lot 1110 (e.g., theindividual drives to smart parking lot 1110, the individual is droppedoff at smart parking lot 1110, etc.). At step 1330, smart parking lotsystem 1100 detects an individual near a parking lot. In variousembodiments, the parking lot is smart parking lot 1110. In variousembodiments, step 1330 includes receiving sensor data from sensors 1116.For example, smart parking lot system 1100 may receive image data fromsensors 1116 and use image recognition to determine the presence of anindividual. In some embodiments, step 1330 includes detecting a mobiledevice associated with the individual. For example, sensors 1116 mayreceive NFC communication from a mobile phone associated with theindividual.

At step 1340, smart parking lot system 1100 identifies the individual.For example, smart parking lot system 1100 may query entity graph 170 toidentify a digital twin associated with the individual. In someembodiments, smart parking lot system 1100 may receive image data fromsensors 1116, apply facial recognition on the image data to identifyfacial features, and query entity graph 170 using the facial features toidentify an individual. As another example, smart parking lot system1100 may receive an identifier from a mobile device associated with theindividual (e.g., via NFC, etc.) and query entity graph 170 using theidentifier to identify the individual.

At step 1350, smart parking lot system 1100 retrieves contextinformation corresponding to the individual. In various embodiments,step 1350 includes retrieving a digital twin associated with theindividual. For example, smart parking lot system 1100 may query entitygraph 170 to retrieve a digital twin associated with the individualincluding context information. In various embodiments, the digital twinincludes information describing the individual (e.g., contextinformation, etc.). For example, the digital twin may include a scheduleof the individual, physical characteristics of the individual (e.g.,weight, hair color, facial features, physical impairments, etc.), anorganizational role of the individual, an assigned parking spaceassociated with the individual, health information associated with theindividual, and/or any other information describing the individual. Insome embodiments, the context information includes an indication ofinterested persons. For example, the individual may be a visitor and thecontext information may include a host of the visitor. In someembodiments, an employee may send a calendar invitation to a visitor toschedule a meeting, the visitor may register for the meeting, smartparking lot system 1100 may detect the visitor arrive at smart parkinglot 1110, and smart parking lot system 1100 may retrieve contextinformation associated with the visitor including an identity of theemployee that invited the visitor.

At step 1360, smart parking lot system 1100 identifies interestedpersons based on the context information. For example, smart parking lotsystem 1100 may identify a host associated with the individual. As anadditional example, smart parking lot system 1100 may identify meetingattendees associated with an event on a schedule of the individual. Asyet another example, smart parking lot system 1100 may identify anassistant associated with the individual. In various embodiments, theinterested persons include anyone interested in knowing about thearrival of the individual. In some embodiments, the interested personsare determined by user preferences associated with the individual. Insome embodiments, smart parking lot system 1100 may query a digital twinassociated with the identified individual to determine the interestedpersons. In some embodiments, smart parking lot system 1100 identified asingle interested person. Additionally or alternatively, smart parkinglot system 1100 may identify multiple interested persons.

At step 1370, smart parking lot system 1100 provides the interestedpersons an indication that the individual has arrived in the parkinglot. For example, smart parking lot system 1100 may sent a notificationto mobile devices associated with the interested persons. In variousembodiments, the notification is customized. In some embodiments, thenotification facilitates communication between the interested personsand the individual. For example, smart parking lot system 1100 may sendan email to an interested person associated with the individual, theinterested person may reply to the email with a personalized message tothe individual, and smart parking lot system 1100 may display thepersonalized message on digital displays in smart parking lot 1110 forviewing by the individual. In various embodiments, the indicationincludes location information. For example, the indication may be a pushnotification on a mobile device that includes a current location of theindividual (e.g., what parking space they are at, etc.).

Referring now to FIG. 7, a method 1400 of dynamically generatingsuggested changes for a parking lot is shown, according to anembodiment. In various embodiments, smart parking lot system 1100 atleast partially implements method 1400. At step 1410, smart parking lotsystem 1100 detects a vehicle that enters into a parking lot. In variousembodiments, the parking lot is smart parking lot 1110. In variousembodiments, step 1410 includes smart parking lot system 1100 receivingsensor data from sensors 1116. For example, a motion detector positionednear an entrance to smart parking lot 1110 may detect a vehicle enteringsmart parking lot 1110 and send an indication to smart parking lotsystem 1100. Additionally or alternatively, smart parking lot system1100 may receive position data from a mobile device associated with avehicle and/or individual. For example, smart parking lot system 1100may receive GPS data from a client device 40 associated with anindividual indicating that the individual is at an entrance to smartparking lot 1110.

At step 1420, smart parking lot system 1100 identifies a characteristicof the vehicle. For example, smart parking lot system 1100 may identifya make and model of the vehicle. Additionally or alternatively, smartparking lot system 1100 may identify characteristics of users of thevehicle. In some embodiments, smart parking lot system 1100 may receiveimage data from sensors 1116, apply image recognition to identifyfeatures of the vehicle (e.g., headlights shape, size, color, grillpattern, badge, etc.), and analyze (e.g., query a database, etc.) thefeatures to determine a make and model of the vehicle. As a furtherexample, smart parking lot system 1100 may receive identifyinginformation from an individual associated with the vehicle (e.g., byscanning a QR code, etc.) and further receive sensor data from sensors1116 (e.g., weight data, image data, etc.), retrieve context informationassociated with the individual based on the identifying information(e.g., by querying entity graph 170, etc.), identify a vehicleassociated with the individual based on the context information, verifythat the vehicle identified from the context information is the vehiclethe individual is currently driving (e.g., by comparing the vehicleinformation with sensor data, etc.), and retrieve characteristicsassociated with the vehicle from the context information. In someembodiments, smart parking lot system 1100 updates a database using theidentified characteristics of the vehicle and/or the identifiedcharacteristics of the users of the vehicle. For example, smart parkinglot system 1100 may identify an individual having a new vehicle and mayupdate entity graph 170 to reflect the individual's new vehicle.

At step 1430, smart parking lot system 1100 generates a model of a userpopulation of the parking lot based on the identified characteristics ofthe vehicles. For example, smart parking lot system 1100 may buildand/or update a digital twin of smart parking lot 1110 including makeand model information for each of the vehicles in smart parking lot1110. Additionally or alternatively, smart parking lot system 1100 maygenerate a model of usage of the parking lot. For example, the model maydescribe trends in parking lot usage such as usage demand, adistribution of space rentals, types of vehicles using the parking lot,etc. In various embodiments, the model includes timeseries data. Forexample, the model may reflect changes in the user population over time.In some embodiments, a digital twin of smart parking lot 1110 mayindicate that a black car and a red van were parked in smart parking lot1110 at parking spaces #10 and #293 respectively at 11:00 AM and thatthe black car left smart parking lot 1110 at 11:04 AM.

At step 1440, smart parking lot system 1100 compares the model of theuser population to a model of the parking lot. For example, smartparking lot system 1100 may compare physical features of smart parkinglot 1110 included in a digital twin of smart parking lot 1110 to a userpopulation of smart parking lot 1110 included in the digital twin ofsmart parking lot 1110. Additionally or alternatively, smart parking lotsystem 1100 may compare a model of usage of the parking lot to a modelof the parking lot. In some embodiments, smart parking lot system 1100may compare a number of vehicles regularly using smart parking lot 1110as indicated by the user population included in a digital twin of smartparking lot 1110 to a number of parking spaces in smart parking lot 1110as indicated by physical features of smart parking lot 1110 included inthe digital twin of smart parking lot 1110. As a further example, smartparking lot system 1100 may compare a trend in a number of electricvehicles (e.g., via timeseries data, etc.) using smart parking lot 1110as indicated the user population included in a digital twin of smartparking lot 1110 to a number of available electric vehicle chargingstations for smart parking lot 1110 as indicated by physical features ofsmart parking lot 1110 included in the digital twin of smart parking lot1110.

At step 1450, smart parking lot system 1100 dynamically generatessuggested changes to the parking lot based on the comparison of themodel of the user population and the model of the parking lot. Forexample, smart parking lot system 1100 may generate a suggestion toincrease a number of electric vehicle charging stations in smart parkinglot 1110 based on a comparison indicating that a number of electricvehicles using smart parking lot 1110 will soon outnumber a number ofelectric vehicle charging stations available in smart parking lot 1110.As a further example, smart parking lot system 1100 may generate asuggestion to increase a price associated with using smart parking lot1110 during winter months in response to a comparison that indicatesthat demand for use of smart parking lot 1110 increases during wintermonths. Additionally or alternatively, smart parking lot system 1100 maygenerate suggested changes in a service level associated with theparking lot. For example, smart parking lot system 1100 may generate asuggested change to a non-person related attribute of the parking lot(e.g., a suggestion to install 24-7 video surveillance, etc.).

Referring now to FIG. 8, a method 1500 of modeling resource consumptionin a parking lot is shown, according to an embodiment. In variousembodiments, smart parking lot system 1100 at least partially implementsmethod 1500. At step 1510, smart parking lot system 1100 receives datadescribing resource consumption associated with a building. For example,smart parking lot may receive energy usage information associated withbuilding 10. Step 1510 may include receiving energy usage information(e.g., load, etc.), water usage information, processing power usageinformation, and/or any other resource usage information. For example,smart parking lot system 1100 may receive data describing an electricalload associated with building 10 from a power meter associated withbuilding 10.

At step 1520, smart parking lot system 1100 receives data describingresource consumption associated with a parking lot associated with thebuilding. For example, smart parking lot system 1100 may receive energyusage information associated with smart parking lot 1110. In someembodiments, smart parking lot system 1100 may receive energy usageinformation from an electric meter associated with smart parking lot1110. In various embodiments, the data describing resource consumptionincludes electricity usage information, water usage information,processing power usage information, and/or any other resource usageinformation.

At step 1530, smart parking lot system 1100 generates a model of energyusage associated with the building and the parking lot based on thereceived resource consumption data. In various embodiments, the model isassociated with usage of another resource (e.g., water, processingpower, etc.). In various embodiments, the model may include informationdescribing a transfer of power between building 10 and smart parking lot1110. For example, the model may describe a distribution and usage ofelectrical power within a system including building 10 and smart parkinglot 1110. In various embodiments, the model is an optimization model.For example, the model may be used by an energy optimization system(e.g., electrical subsystem 126, etc.) to determine efficient energyusage within the system.

At step 1540, smart parking lot system 1100 generates an indicationbased on the model. For example, smart parking lot system 1100 mayanalyze the model to determine that smart parking lot 1110 cannotsupport electric vehicle charging today (e.g., because of high loadsassociated with building 10, power savings limits, etc.) and maygenerate a notification for users of smart parking lot 1110 indicatingthat electric vehicle charging will not be offered today. In someembodiments, the indication includes actions. For example, theindication may include disabling electric vehicle charging stationsassociated with smart parking lot 1110. In some embodiments, step 1540occurs in response to receiving a signal from an external system. Forexample, smart parking lot system 1100 may receive a control signal froman energy management system (e.g., electrical subsystem 126, etc.) andgenerate a notification in response to receiving the control signal. Invarious embodiments, step 1540 includes transmitting the indication toindividuals (e.g., users of smart parking lot 1110, etc.). Additionallyor alternatively, step 1540 may include controlling resource consumptionassociated with smart parking lot 1110. For example, smart parking lotsystem 1100 may turn off an in-ground heating system associated withsmart parking lot 1110 to reduce energy consumption associated withsmart parking lot 1110. As an additional example, smart parking lotsystem 1100 may transfer energy to building 10 in response todetermining that building 10 has an unusually high load and requiresadditional power.

Configuration of Exemplary Embodiments

The construction and arrangement of the systems and methods as shown inthe various exemplary embodiments are illustrative only. Although only afew embodiments have been described in detail in this disclosure, manymodifications are possible (e.g., variations in sizes, dimensions,structures, shapes and proportions of the various elements, values ofparameters, mounting arrangements, use of materials, colors,orientations, etc.). For example, the position of elements can bereversed or otherwise varied and the nature or number of discreteelements or positions can be altered or varied. Accordingly, all suchmodifications are intended to be included within the scope of thepresent disclosure. The order or sequence of any process or method stepscan be varied or re-sequenced according to alternative embodiments.Other substitutions, modifications, changes, and omissions can be madein the design, operating conditions and arrangement of the exemplaryembodiments without departing from the scope of the present disclosure.

The present disclosure contemplates methods, systems and programproducts on any machine-readable media for accomplishing variousoperations. The embodiments of the present disclosure can be implementedusing existing computer processors, or by a special purpose computerprocessor for an appropriate system, incorporated for this or anotherpurpose, or by a hardwired system. Embodiments within the scope of thepresent disclosure include program products comprising machine-readablemedia for carrying or having machine-executable instructions or datastructures stored thereon. Such machine-readable media can be anyavailable media that can be accessed by a general purpose or specialpurpose computer or other machine with a processor. By way of example,such machine-readable media can comprise RAM, ROM, EPROM, EEPROM, CD-ROMor other optical disk storage, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to carry or storedesired program code in the form of machine-executable instructions ordata structures and which can be accessed by a general purpose orspecial purpose computer or other machine with a processor. Combinationsof the above are also included within the scope of machine-readablemedia. Machine-executable instructions include, for example,instructions and data which cause a general purpose computer, specialpurpose computer, or special purpose processing machines to perform acertain function or group of functions.

Although the figures show a specific order of method steps, the order ofthe steps may differ from what is depicted. Also two or more steps canbe performed concurrently or with partial concurrence. Such variationwill depend on the software and hardware systems chosen and on designerchoice. All such variations are within the scope of the disclosure.Likewise, software implementations could be accomplished with standardprogramming techniques with rule based logic and other logic toaccomplish the various connection steps, processing steps, comparisonsteps and decision steps.

The term “client or “server” include all kinds of apparatus, devices,and machines for processing data, including by way of example aprogrammable processor, a computer, a system on a chip, or multipleones, or combinations, of the foregoing. The apparatus may includespecial purpose logic circuitry, e.g., a field programmable gate array(FPGA) or an application specific integrated circuit (ASIC). Theapparatus may also include, in addition to hardware, code that createsan execution environment for the computer program in question (e.g.,code that constitutes processor firmware, a protocol stack, a databasemanagement system, an operating system, a cross-platform runtimeenvironment, a virtual machine, or a combination of one or more ofthem). The apparatus and execution environment may realize variousdifferent computing model infrastructures, such as web services,distributed computing and grid computing infrastructures.

The systems and methods of the present disclosure may be completed byany computer program. A computer program (also known as a program,software, software application, script, or code) may be written in anyform of programming language, including compiled or interpretedlanguages, declarative or procedural languages, and it may be deployedin any form, including as a stand-alone program or as a module,component, subroutine, object, or other unit suitable for use in acomputing environment. A computer program may, but need not, correspondto a file in a file system. A program may be stored in a portion of afile that holds other programs or data (e.g., one or more scripts storedin a markup language document), in a single file dedicated to theprogram in question, or in multiple coordinated files (e.g., files thatstore one or more modules, sub programs, or portions of code). Acomputer program may be deployed to be executed on one computer or onmultiple computers that are located at one site or distributed acrossmultiple sites and interconnected by a communication network.

The processes and logic flows described in this specification may beperformed by one or more programmable processors executing one or morecomputer programs to perform actions by operating on input data andgenerating output. The processes and logic flows may also be performedby, and apparatus may also be implemented as, special purpose logiccircuitry (e.g., an FPGA or an ASIC).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read only memory ora random access memory or both. The essential elements of a computer area processor for performing actions in accordance with instructions andone or more memory devices for storing instructions and data. Generally,a computer will also include, or be operatively coupled to receive datafrom or transfer data to, or both, one or more mass storage devices forstoring data (e.g., magnetic, magneto-optical disks, or optical disks).However, a computer need not have such devices. Moreover, a computer maybe embedded in another device (e.g., a mobile telephone, a personaldigital assistant (PDA), a mobile audio or video player, a game console,a Global Positioning System (GPS) receiver, or a portable storage device(e.g., a universal serial bus (USB) flash drive), etc.). Devicessuitable for storing computer program instructions and data include allforms of non-volatile memory, media and memory devices, including by wayof example semiconductor memory devices (e.g., EPROM, EEPROM, and flashmemory devices; magnetic disks, e.g., internal hard disks or removabledisks; magneto-optical disks; and CD ROM and DVD-ROM disks). Theprocessor and the memory may be supplemented by, or incorporated in,special purpose logic circuitry.

To provide for interaction with a user, implementations of the subjectmatter described in this specification may be implemented on a computerhaving a display device (e.g., a CRT (cathode ray tube), LCD (liquidcrystal display), OLED (organic light emitting diode), TFT (thin-filmtransistor), or other flexible configuration, or any other monitor fordisplaying information to the user and a keyboard, a pointing device,e.g., a mouse, trackball, etc., or a touch screen, touch pad, etc.) bywhich the user may provide input to the computer. Other kinds of devicesmay be used to provide for interaction with a user as well; for example,feedback provided to the user may be any form of sensory feedback (e.g.,visual feedback, auditory feedback, or tactile feedback), and input fromthe user may be received in any form, including acoustic, speech, ortactile input. In addition, a computer may interact with a user bysending documents to and receiving documents from a device that is usedby the user; for example, by sending web pages to a web browser on auser's client device in response to requests received from the webbrowser.

Implementations of the subject matter described in this disclosure maybe implemented in a computing system that includes a back-end component(e.g., as a data server), or that includes a middleware component (e.g.,an application server), or that includes a front end component (e.g., aclient computer) having a graphical user interface or a web browserthrough which a user may interact with an implementation of the subjectmatter described in this disclosure, or any combination of one or moresuch back end, middleware, or front end components. The components ofthe system may be interconnected by any form or medium of digital datacommunication (e.g., a communication network). Examples of communicationnetworks include a LAN and a WAN, an inter-network (e.g., the Internet),and peer-to-peer networks (e.g., ad hoc peer-to-peer networks).

The present disclosure may be embodied in various different forms, andshould not be construed as being limited to only the illustratedembodiments herein. Rather, these embodiments are provided as examplesso that this disclosure will be thorough and complete, and will fullyconvey the aspects and features of the present disclosure to thoseskilled in the art. Accordingly, processes, elements, and techniquesthat are not necessary to those having ordinary skill in the art for acomplete understanding of the aspects and features of the presentdisclosure may not be described. Unless otherwise noted, like referencenumerals denote like elements throughout the attached drawings and thewritten description, and thus, descriptions thereof may not be repeated.Further, features or aspects within each example embodiment shouldtypically be considered as available for other similar features oraspects in other example embodiments.

It will be understood that, although the terms “first,” “second,”“third,” etc., may be used herein to describe various elements,components, regions, layers and/or sections, these elements, components,regions, layers and/or sections should not be limited by these terms.These terms are used to distinguish one element, component, region,layer or section from another element, component, region, layer orsection. Thus, a first element, component, region, layer or sectiondescribed below could be termed a second element, component, region,layer or section, without departing from the spirit and scope of thepresent disclosure.

The terminology used herein is for the purpose of describing particularembodiments and is not intended to be limiting of the presentdisclosure. As used herein, the singular forms “a” and “an” are intendedto include the plural forms as well, unless the context clearlyindicates otherwise. It will be further understood that the terms“comprises,” “comprising,” “includes,” and “including,” “has,” “have,”and “having,” when used in this specification, specify the presence ofthe stated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, integers, steps, operations, elements, components,and/or groups thereof. As used herein, the term “and/or” includes anyand all combinations of one or more of the associated listed items.Expressions such as “at least one of,” when preceding a list ofelements, modify the entire list of elements and do not modify theindividual elements of the list.

As used herein, the term “substantially,” “about,” and similar terms areused as terms of approximation and not as terms of degree, and areintended to account for the inherent variations in measured orcalculated values that would be recognized by those of ordinary skill inthe art. Further, the use of “may” when describing embodiments of thepresent disclosure refers to “one or more embodiments of the presentdisclosure.” As used herein, the terms “use,” “using,” and “used” may beconsidered synonymous with the terms “utilize,” “utilizing,” and“utilized,” respectively. Also, the term “exemplary” is intended torefer to an example or illustration.

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent file or records, but otherwise reserves all copyrightrights whatsoever.

What is claimed is:
 1. One or more non-transitory computer-readablestorage media having instructions stored thereon that, when executed byone or more processors, cause the one or more processors to: detect avehicle that enters into a parking lot; identify an individualassociated with the vehicle; retrieve context information correspondingto the individual; dynamically determine a first parking space based onthe context information and available parking spaces; and provide theindividual with directions to the first parking space.
 2. The one ormore non-transitory computer-readable storage media of claim 1, whereinthe context information includes a schedule having events associatedwith the individual.
 3. The one or more non-transitory computer-readablestorage media of claim 2, wherein dynamically determining the firstparking space further includes determining the first parking space basedon a time associated with a next event on the schedule of events.
 4. Theone or more non-transitory computer-readable storage media of claim 3,wherein dynamically determining the first parking space further includesdetermining the first parking space based on a physical location of thenext event on the schedule of events.
 5. The one or more non-transitorycomputer-readable storage media of claim 2, wherein the contextinformation includes an organizational role of the individual, andwherein dynamically determining the first parking space further includesdetermining the first parking space based on the organizational role ofthe individual.
 6. The one or more non-transitory computer-readablestorage media of claim 1, wherein the context information includes aphysical characteristic of the individual.
 7. The one or morenon-transitory computer-readable storage media of claim 1, whereindetecting the vehicle includes recognizing a license plate of thevehicle.
 8. The one or more non-transitory computer-readable storagemedia of claim 1, wherein providing the individual with directions tothe first parking space further includes transmitting the directions toa device associated with the individual.
 9. The one or morenon-transitory computer-readable storage media of claim 1, whereindynamically determining the first parking space further includesdetermining the first parking space based on a plurality of schedulesassociated with a plurality of individuals, wherein each of theplurality of schedules indicates that the associated individual isvisiting a space associated with the parking lot.
 10. One or morenon-transitory computer-readable storage media having instructionsstored thereon that, when executed by one or more processors, cause theone or more processors to: detect a vehicle that enters into a parkinglot; identify an individual associated with the vehicle; retrievecontext information corresponding to the individual; identify aninterested person based on the context information; and provide theinterested person with an indication that the individual has arrived inthe parking lot.
 11. The one or more non-transitory computer-readablestorage media of claim 10, wherein the context information includes aschedule having events associated with the individual.
 12. The one ormore non-transitory computer-readable storage media of claim 11, whereinthe interested person includes an attendee of an event on the scheduleof events.
 13. The one or more non-transitory computer-readable storagemedia of claim 10, wherein the interested person includes securitypersonnel.
 14. The one or more non-transitory computer-readable storagemedia of claim 10, wherein the processing circuit provides theinterested person with an indication that the individual has arrived inthe parking lot in response to determining that the vehicle is parked inan assigned parking space.
 15. The one or more non-transitorycomputer-readable storage media of claim 14, wherein the processingcircuit determines that the vehicle is parked in the assigned parkingspace based on sensors located at the assigned parking space detecting apresence of the vehicle.
 16. The one or more non-transitorycomputer-readable storage media of claim 10, wherein the indicationincludes a location of the individual.
 17. One or more non-transitorycomputer-readable storage media having instructions stored thereon that,when executed by one or more processors, cause the one or moreprocessors to: detect vehicles that enter into a parking lot; identify acharacteristic of one or both of the vehicles or users of the vehicles;generate a model of usage of the parking lot based on the one or both ofthe identified characteristic of the vehicles or the users of thevehicles; compare the model of the usage of the parking lot to a modelof the parking lot; and dynamically generate suggested changes in aservice level associated with the parking lot based on the comparison ofthe model of the usage of the parking lot and the model of the parkinglot.
 18. The one or more non-transitory computer-readable storage mediaof claim 17, wherein identifying the characteristic of the vehiclesfurther includes identifying an occupancy of the vehicles.
 19. The oneor more non-transitory computer-readable storage media of claim 18,wherein the model of the usage of the parking lot includes usercharacteristics associated with the parking lot.
 20. The one or morenon-transitory computer-readable storage media of claim 19, wherein theuser characteristics include a number of individuals using the parkinglot based on the identified occupancy of the vehicles.